<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Title</title>
</head>
<body>

</body>
<script type="module">
	// 1- Promise拥有then方法（原型对象中）
	// 2- then方法的特点
	//   2-1:接收两个参数（类型都是函数）
	//       当p的状态为成功调用成功回调，成功回调接收的值即是成功值
	//       当p的状态为失败调用失败回调，失败回调接收的值即是失败值
	//       不管是成功还是失败回调，只会有一个回调执行，返回的值决定着p2的状态和值。
	//   2-2:then的返回值是一个新的Promise实例(完成)
	//      2-2-1:如果回调函数返回的是一个非Promise那么,p2的状态为成功，值为返回值
	//      2-2-2:如果回调函数返回的是一个Promise那么,p2的状态以及值与返回的Promise实例相同
	//      2-2-3:如果回调函数产生异常，那么p2的状态为失败，值为异常信息。
	import Promise from "./index.js";
	const p = new Promise(function(resolve,reject){
		resolve(1);
		// reject(2);
	});
	const p2 = p.then(function(value){
		// 成功回调函数onResolved函数
		// console.log("成功回调",value);
		// return 100+value;
		// return new Promise(function(resolve,reject){
		// 	reject(900);
		// })
		
		throw "异常";
		
	},function(reason){
		// 失败回调函数onRejected函数
		// console.log("失败回调",reason);
	});
	console.log(p2);// rejected,异常
	
</script>
</html>